package com.answer.petsale.model.vo;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;

/**
 * 订单视图对象
 *
 * @author answer
 */
@Data
public class OrderVO implements Serializable {

    /**
     * 订单ID
     */
    private Long id;

    /**
     * 唯一订单号
     */
    private String orderNumber;

    /**
     * 最终成交价格
     */
    private BigDecimal finalPrice;

    /**
     * 订单状态 (0: 待支付, 1: 已完成, 2: 已取消)
     */
    private Integer status;

    /**
     * 订单创建时间
     */
    private Date createTime;

    /**
     * 支付完成时间
     */
    private Date payTime;

    // START: 新增代码
    /**
     * 订单被拒绝的理由
     */
    private String rejectionReason;
    // END: 新增代码

    /**
     * 购买的宠物信息
     */
    private AnimalInfoVO animalInfo;

    /**
     * 买家信息
     */
    private UserVO buyerInfo;

    /**
     * 嵌套的宠物简略信息视图
     */

    private String consignee;
    private String phone;
    private String address;
    private String remark;
    @Data
    public static class AnimalInfoVO implements Serializable {
        private Long id;
        private String name;
        private String imageUrl;
        private static final long serialVersionUID = 1L;
    }

    private static final long serialVersionUID = 1L;
}